// pages/wxml/wxml.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    msg: "hello",
    count: 10,
    list: ["张三", "李四", "王五"],
    show: true,
    arr: [
      {
        name: "张三",
        age: 20
      },
      {
        name: "李四",
        age: 30
      },
      {
        name: "王五",
        age: 40
      }
    ],
    numList: [1,2,3,4,5,6,7,8,9],
    colorList: ["red", "green", "blue"],
    show2: 5,
    score: 95,
    num: 3
  },

  // 事件处理函数
  // event叫做事件对象,每一个事件处理函数都有事件对象
  // 会有一些点击的详细的信息

  // 父元素和子元素都加了事件，子元素的事件会默认传导到父元素，事件冒泡
  // 冒泡事件：当一个组件上的事件被触发后，该事件会向父节点传递。默认
  // 非冒泡事件：当一个组件上的事件被触发后，该事件不会向父节点传递
  // bind开头的事件是会冒泡的，catch开头的不冒泡
  /*
    touchstart	手指触摸动作开始	
    touchmove	手指触摸后移动	
    touchcancel	手指触摸动作被打断，如来电提醒，弹窗	
    touchend	手指触摸动作结束	
    tap	手指触摸后马上离开	
    longpress	手指触摸后，超过350ms再离开，如果指定了事件回调函数并触发了这个事件，tap事件将不被触发
  */
  handleClick(event) {
    console.log("子元素被点击了");
    // console.log("按钮1被点击了", event);
  },
  handleClick2() {
    console.log("父元素被点击了");
  },
  fn(event) {
    console.log(event);
    let num = 10;
    console.log(num + +event.target.dataset.a);
  },
  fn3() {
    // 希望出现响应式，必须通过小程序规定的数据修改方式(this.setData)
    // 这个方法需要传入一个对象作为参数
    // 这个对象最终会和data对象做合并
    this.setData({
      num: 10
    })
  },
  fn4() {
    this.setData({
      num: this.data.num + 1
    })
  },
  fn5() {
    this.setData({
      // list: this.data.list.concat("赵六")
      list: [...this.data.list, "赵六"]
    })
  }
})